home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Generous Efforts of Many
/
gemcd.zip
/
GEM.CD.A.po
/
FEATURES:BEAGLE
/
FLEX.TYPE.SHK
/
FLEX.TYPE
/
TURN SIDEWAYS.bas
< prev
next >
Wrap
BASIC Source File
|
2000-01-01
|
2KB
|
59 lines
10 REM TURN SIDEWAYS
20 LOMEM: ( PEEK(176) +4) *256
30 TEXT : HOME
40 HTAB 16: INVERSE : PRINT ":SIDEWAYS:": POKE 34,2: NORMAL
50 PRINT
60 PRINT "DO YOU NEED A DESCRIPTION (Y/N)? ";: GET X$
70 IF X$ < >"Y" THEN 120
80 PRINT : PRINT
90 PRINT "THIS PROGRAM WILL TURN ALL OF THE": PRINT "CHARACTERS OF THE SPECIFIED TEXT FONT": PRINT "CLOCKWISE OR COUNTER CLOCKWISE (90 DEG)."
100 PRINT "(NOTE: THIS IS ONLY RECOMMENDED FOR THE": PRINT "STANDARD 40 COLUMN CHARACTER SETS.)"
110 PRINT : PRINT "PRESS ANY KEY TO CONTINUE.";: GET X$
120 HOME
130 PRINT "ENTER THE NAME OF THE CHARACTER SET YOU": PRINT "WOULD LIKE TO TURN:": INPUT "";CS$
140 A = ( PEEK(176) +1) *256
150 PRINT
160 PRINT "LOADING THE CHARACTER SET.": PRINT CHR$(4)"BLOAD"CS$",A"A
170 PRINT : PRINT "TURN IT COUNTER CLOCKWISE OR CLOCKWISE": PRINT "( <- OR -> )? ";: GET X$
180 IF X$ = CHR$(8) THEN PRINT "<-": GOTO 210
190 IF X$ = CHR$(21) THEN PRINT "->": GOTO 370
200 VTAB 8: HTAB 1: GOTO 170
210 PRINT : PRINT "TURNING."
220 PRINT : PRINT "[ ] <-- THIS WILL BE 96 WHEN DONE.";
230 FOR I = A TO A +767 STEP 8
240 FOR J = 0 TO 7:TEMP(J) = 0: NEXT
250 P1 = 1
260 FOR J = 0 TO 6
270 BYTE = PEEK(I +J)
280 P2 = 64
290 IF BYTE > = 128 THEN BYTE = BYTE -128
300 FOR K = 6 TO 0 STEP -1
310 IF BYTE > = P2 THEN BYTE = BYTE -P2:TEMP(K) = TEMP(K) +P1
320 P2 = P2/2
330 NEXT :P1 = P1 *2: NEXT
340 FOR J = 0 TO 7: POKE I +(7 -J),TEMP(J): NEXT
350 HTAB 2: PRINT INT((I -A)/8) +1;
360 NEXT : GOTO 530
370 PRINT : PRINT "TURNING."
380 PRINT : PRINT "[ ] <-- THIS WILL BE 96 WHEN DONE.";
390 FOR I = A TO A +767 STEP 8
400 FOR J = 0 TO 7:TEMP(J) = 0: NEXT
410 P1 = 64
420 FOR J = 0 TO 6
430 BYTE = PEEK(I +J)
440 P2 = 64
450 IF BYTE > = 128 THEN BYTE = BYTE -128
460 FOR K = 6 TO 0 STEP -1
470 IF BYTE > = P2 THEN BYTE = BYTE -P2:TEMP(K) = TEMP(K) +P1
480 P2 = P2/2
490 NEXT :P1 = P1/2: NEXT
500 FOR J = 0 TO 7: POKE I +J,TEMP(J): NEXT
510 HTAB 2: PRINT INT((I -A)/8) +1;
520 NEXT
530 PRINT : PRINT : PRINT "ENTER THE NEW NAME FOR SAVING THE": PRINT "CHARACTER SET. (RETURN FOR SAME NAME)": INPUT "";X$
540 IF X$ = "" THEN X$ = CS$
550 PRINT : PRINT "SAVING THE CHARACTER SET."
560 PRINT CHR$(4)"BSAVE"X$",A"A",L"768
570 PRINT : PRINT "WOULD YOU LIKE TO TURN ANOTHER ": PRINT "CHARACTER SET (Y/N)? ";: GET X$
580 IF X$ = "Y" THEN 120
590 TEXT : HOME : END